#ifndef ROOT_H
#define ROOT_H


#include "data_global.h"
#include "collection.h"


class DATASHARED_EXPORT Root : public Collection
{
    Q_OBJECT

public:

    Q_INVOKABLE Root(QObject *parent = 0);
    Root(const Root& other);

    bool changed() const;


public slots:

    void onChanged(bool changed = true);


protected:

    bool m_changed;


protected slots:

    virtual void onReparent();


};


Q_DECLARE_METATYPE(Root*)


typedef QPointer<Root> RootPtr;


#endif // ROOT_H
